Stateless-agentless system and method of managing data in a computing environment

ABSTRACT

A system comprising a memory and a processing device coupled to the memory, the processing device to divide a command sequence into a plurality of individual commands, provide the plurality of individual commands to a target system, receive a plurality of individual command results from the target system, and manage a state associated with the command sequence based at least in part on the plurality of individual command results, wherein the state indicates an individual command to be executed next.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, and claims the benefit of U.S.patent application Ser. No. 11/485,088 filed Jul. 12, 2006, which iscontinuation-in-part of, and claims the benefit of U.S. patentapplication Ser. No. 10/480,566 filed on Jun. 11, 2002, and claims thebenefit of U.S. Provisional Application No. 60/698,600 filed Jul. 12,2005. U.S. patent application Ser. Nos. 11/485,088 and 10/480,566 andU.S. Provisional Application No. 60/698,600 are incorporated byreference herein.

FIELD OF THE INVENTION

The present invention relates to the command and control of computingsystems, and more specifically to a method and system for managing thecommand and control of one or more target systems using a point ofcontrol system, without having to maintain on the target system anystate information, script, software, or virtual machine code.

BACKGROUND OF THE INVENTION

In conventional computing environments, the only means available toinvoke the execution of commands, in sequence, upon a target systemrequire that at least one of the following be installed on the targetsystem: 1) a platform-specific (i.e., native) binary executables on thetarget system, 2) scripts and matching scripting language interpreters(e.g., PERL, PYTHON, Windows BAT Files plus their respectiveinterpreters), or 3) a virtual machine interpreter and/or a “just intime” (JIT) compiler and matching virtual machine executables (e.g., aJava virtual machine (VM)). All of these methods require that the targetsystem support the installation of compilation and/or interpretivesoftware, and further requires the storage of scripts and otherexecutables prior to their use on the target system. These requirementnecessitate that additional software be installed on the target system,at a cost expressed in terms of target system resources consumed (i.e.,storage space), the time required, by person or by automation, toconduct and validate the installation of the software, and the cost ofmaintaining the software after installation (i.e., providing patches,software repair, software replacement, and/or software removal).

In addition, conventional systems require the means to provide supportfor the installation and configuration of software on each of the targetsystems maintained in the computing environment. Furthermore, accesscredentials sufficient to support the installation and configuration ofthe software must be provided and managed.

Another drawback of conventional systems wherein the software ismaintained on the one or more target systems is that such software, onceinstalled, must be granted privileges sufficient to carry out itsintended tasks. As such, the software must be free of any intentional oraccidental compromises which may impede or disrupt the intended use ofthe target system.

Moreover, conventional systems and methods place a significant burden onthe system administrator to assemble and have available the technicalskills necessary to craft scripts, binary executables, and/or virtualmachine programs specific to each target system to be managed and/ormonitored. This generally requires the administrator to hire staff orconsultants to author the required code or acquire the required code orfiles from a third party.

Traditionally, there are four principal architectures by which one ormore target systems receive requests for command execution from acentral managing system. The first architecture involves processing therequest using specific protocols (e.g., SNMP), in which a standard agent(i.e., the target system) exposes control functionality and targetsystem data to the managing system. According to this architecture, thesoftware enabling the support of such a protocol must be installed andconfigured on the target system in support of this capability, orenabled if already installed, and secured against unauthorized accessrequests.

A second common architecture, referred to as a “service” model, involvesthe use of a target system thread of execution (such as, for example, adaemon process on Linux systems or a Service on Windows systems), whichresponds to requests made of it by the managing system.

A third general architecture, referred to as an “agent” model, involvesthe use of a communications protocol (such as Telnet, SSH, FTP, or oneof proprietary design) by the managing system, to invoke the executionof scripts or executables previously loaded or installed on the targetsystem, whose resultant data is optionally captured by the managingsystem. An agent, or agent system, is defined as a system havinginstalled thereon software specifically adapted for the purpose ofmonitoring that system. Generally, the monitoring software on the agentsystem includes a schedule of actions to be taken and sequences ofcommands to be executed.

At a high level, these individual commands have no state or stateinformation. However, individual commands may be logically associatedand strung together in a command sequence. As such, the results of theindividual commands that make up a command sequence may be consideredtogether to inform and/or direct future processing by a system (e.g.,data collection, parsing, storage, communications, etc.). In order toperform an action which is conditioned on the results of a plurality ofindividual commands requires the management of the state of the commandsequence. The command results and state of the command sequenceexecutions are stored on the agent system, pending delivery of theresults to a managing system.

However, each of the above-described architectures disadvantageouslyrequire that software and/or command scripts be installed on the targetsystem. Further, the software and/or scripts must be executed on thetarget system, and require the use of significant processing resources.Additionally, such software and/or scripts must be maintained,irrespective of whether or not the installation is permanent (i.e., inthe event the target system has mass storage) or loaded upon reboot(i.e., in the event the target system is “diskless”). Moreover, ITorganizations consider the enabling of generalized command and controlprotocols (such as SNMP) on a target system as a security risk.

A fourth architecture, referred to as an “agentless” model, involves theuse of a communications protocol (such as, for example, Telnet, SSH, orFTP) by the managing system, to invoke the execution of a specific andsingular command on the target system, whose resultant data isoptionally captured by the managing system. According to this model, nosoftware is installed on the target system for the purpose of monitoringthat system. However, such software is forwarded to that system andexecuted upon demand. Because this software is not ‘permanently’ storedon the agentless target system, it is not able to survive a reboot.However, once a command sequence is provided to such agentless targetsystem, all instructions of the command sequence are executed, with thestate of such execution managed and maintained by the agentless targetsystem. Furthermore, the results are passed back to the managing system,as there are no provisions for the storage of the results on theagentless target system.

However, the conventional agentless model is able to execute onlyindividual commands on the target system, and not command sequences. Assuch, the traditional agentless model does not support conditionalexecution of commands on the target system.

Consequently, there is a need in the art for a system and method forefficiently and effectively managing one or more target systems using amanaging system.

SUMMARY OF THE INVENTION

The above-described problems are addressed and a technical solution isachieved in the art by a system architecture providing a stateless andagentless system and method for managing data in a computingenvironment. According to an embodiment of the present invention, asystem and method are provided for commanding and controlling one ormore target systems with a managing system, without having to manage(i.e., maintain and update) on the target system either stateinformation or monitoring scripts, software, or virtual machine codes.

According to an embodiment of the present invention, the system andmethod include a managing system, herein referred to as a point ofcontrol, which manages one or more target systems. The point of controlmanages a set of conditional commands and resultant state information,and sends or posts individual command requests to the target system.Advantageously, the target system may rely on its native capabilities(e.g., software, applications, code) to process the individual commandrequest and provide the requested result.

According to an embodiment of the present invention, the point ofcontrol conveys the individual command requests to a target system andmanages (i.e., maintains and updates) the state information associatedwith the command requests, and captures the resulting data generated bythe target system. Furthermore, the individual results generated by thetarget system are captured by the point of control, as if commandexecution had occurred locally.

According to an embodiment of the present invention, the point ofcontrol conducts command sequence execution and information gatheringactivities normally conducted on the target system. Advantageously, thepoint of control is target-system agnostic (i.e., capable of supportingany type of target system), and ubiquitous (i.e., supported by anycommunications protocol, or combination of protocols, capable ofconveying data and resident on the point of control and the targetsystem).

The stateless-agentless system architecture provides for the managementand control of the target system in a manner such that the need toinstall and maintain monitoring software on the target system iseliminated. As such, the system according to an embodiment of thepresent invention further eliminates the need for the assignment ofaccess and execution credentials historically needed to support softwareinstalled on the target system. Furthermore, the software-free targetsystems are less susceptible to intentional or accidental compromises,resulting in a safer and more secure computing environment.

According to an embodiment of the present invention, the management ofcommand sequencing (handled by the point of control) is bifurcated fromthe execution of individual commands (handled by the target system).These two functions are separated and performed across a communicationslink (i.e., over a network) established between the point of control andthe target system. As a result of this division of work, the managementof the state information may be handled by the point of control, thuscreating an environment wherein neither software nor state need bemaintained on the target system.

According to an embodiment of the present invention, thestateless-agentless target system does not execute, manage, or maintainstate or state information. Advantageously, the state informationassociated with the execution of a sequence of commands is divorced fromthe execution of the individual commands of such a sequence. Accordingto an embodiment of the present invention, only individual commands areexecuted by the target system, the remainder of the processing andmanagement is performed by the point of control.

According to an embodiment of the present invention, the systemarchitecture provides for the separation of the data collection stepsfrom the maintenance of the state associated with doing so. That is, thetarget system may respond to individual requests for data (i.e.,individual commands) without regard to the state of a command sequence(i.e., a plurality of individual commands), while the point of controltracks and updates the state of the command sequence, and provides thetarget system with instructions based at least in part on the stateinformation.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be more readily understood from the detaileddescription of exemplary embodiments presented below considered inconjunction with the attached drawing, of which:

FIG. 1 illustrates a system and process flow for a stateless-agentlessmanagement architecture, according to an embodiment of the presentinvention.

It is to be understood that the attached drawings are for purposes ofillustrating the concepts of the invention and may not be to scale.

DETAILED DESCRIPTION OF THE INVENTION

The present invention relates to a stateless-agentless system and methodof processing and managing data in a compute environment.

According to an embodiment of the present invention, the systemcomprises a Management System 10 communicatively connected to a Point ofControl 20. The Point of Control 20 is communicatively connected over aNetwork 40 to one or more Stateless-Agentless Target Systems 30, asshown in FIG. 1. The term “communicatively connected” is intended toinclude any type of connection, whether wired or wireless, in which datamay be communicated. The term “communicatively connected” is intended toinclude a connection between devices and/or programs within a singlecomputer or between devices and/or programs on separate computers. Onehaving ordinary skill in the art will appreciate that the system mayinclude any number of Points of Control 20 and any number ofStateless-Agentless Target Systems 30. An exemplary embodiment of thepresent invention having one Point of Control 20 and oneStateless-Agentless Target System 30 is described in detail below withregard to FIG. 1.

The term “stateless-agentless” as used herein is defined as a systemwhich is both “agentless” (i.e., a system on which no software has beeninstalled for the purpose of monitoring the system) and “stateless(i.e., a system which does not execute state, only individual commands).The ‘state’ associated with the execution of a sequence of commands isdivorced from the execution of the individual commands of the sequence.Only individual commands are executed by the Stateless-Agentless TargetSystem 30. The remainder of the work (i.e., the determination andmaintenance of state information related to a sequence of commands) isperformed by the Point of Control 20.

The Point of Control 20 is a computer-based system comprised of one ormore computers and/or one or more computer-executable programsconfigured to manage the one or more communicatively connectedStateless-Agentless Target Systems 30. The term “computer” is intendedto include any data processing device, such as a desktop computer, alaptop computer, a mainframe computer, a personal digital assistant, aserver, a handheld device, or any other device able to process data.

According to an embodiment of the present invention, the Point ofControl 20 is configured to manage the process of accumulating andmanaging information or data associated with one or moreStateless-Agentless Target Systems 30. The Point of Control 20 acquiresa command sequence to be processed, either directly or indirectly, froma Management System 10. The command sequence is comprised of a number ofindividual, but related commands. A command is defined as including, butnot limited to, a specific, individual, and atomic (i.e., stand alone)request which may be made of the system being monitored (i.e., theStateless-Agentless Target System 30).

The commands are executed by the Stateless-Agentless Target System 30using one or more execution facilities native to the Stateless-AgentlessTarget System 30. The execution facilities of the Stateless-AgentlessTarget System 30 include, but are not limited to, are those resources(e.g., programs or applications) that are native to that system, orassumed to be present as a result of the installation and/or use ofother software programs or applications. As such, no additionalexecution facilities need be loaded or installed on theStateless-Agentless Target System 30 in order to conduct the monitoringof that system, thus making it an ‘agentless’ system. For example, thecommand “ls/” on a UNIX system or “dir c:” on a Windows system producesa listing of the requested local storage resource. Because theseexecution facilities are native to UNIX-based and Windows-based systems,respectively, it is not necessary to install this capability on theStateless-Agentless Target System 30. Additionally, such a command isatomic (e.g., stand-alone) in nature, meaning it may be executed byitself and is not dependent upon external events or resources to supportits usage.

The command sequence may include, but is not limited to, a list ofcommands maintained and processed by the Point of Control 20. Accordingto an embodiment of the present invention, the command sequence may beprocessed according to a schedule, wherein individual commands arecommunicated to the Stateless-Agentless Target System 30 for executionpursuant to that schedule. As such, the distinction between anindividual command, which is executed on a Stateless-Agentless TargetSystem 30, and a command sequence, which are held by and executed on aPoint of Control 20 is a matter of storage and state management. ThePoint of Control 20 may sequentially step through and post theindividual commands to the Target System 30 for execution, therebymanaging the process of what the Stateless-Agentless Target System 30executes. Furthermore, the Point of Control 20 maintains and updates thestate associated with the execution of any command sequence by makingconditional decisions regarding the next individual command to beexecuted.

According to an embodiment of the present invention, the Point ofControl 20 may also receive from the Management System 10 the protocolto use when communicating with each Stateless-Agentless Target System 30(i.e., the protocol of the communication link) and theauthentication/authorization credentials required to engage eachStateless-Agentless Target System 30 in such communication.

In addition, the Point of Control 20 gathers, maintains, and stores allcommand results generated by executing the individual commands, andprovides these results, either individually or in aggregate to theManagement System 10.

One having ordinary skill in the art will appreciate that the Network 40may be based on any suitable protocol, such as, for example, TELNET,HTTP, FTP, etc. Any protocol available to both the Point of Control 20and the Stateless-Agentless Target System 30 is a candidate to relaycommands and requests therebetween, as well as the transport ofresponses generated, if any, by the Stateless-Agentless Target System30, back to the Point of Control 20. Optionally, the Network 40 may besecured using any suitable security technique, such as, for example,TELNET, HTTP, FTP, etc.

According to an embodiment of the present invention, any suitablesecurity service may be used to secure the Network 40, including but notlimited to encryption services supported by the participating systems.

One having ordinary skill in the art will appreciate that the Point ofControl 20 and the one or more Stateless-Agentless Target Systems 30 maycomprise one or more computer programs executing on programmablecomputers that include, but are not limited to, a storage mediumreadable by a processor (including volatile and non-volatile memoryand/or storage elements), at least one input device and one or moreoutput devices. The one or more computer-executable programs may beimplemented in a high-level procedural or object-oriented programminglanguage able to communicate with a computer, or implemented in assemblyor machine language, if desired. One having ordinary skill in the artwill appreciate that the programming language may be compiled orinterpreted.

FIG. 1 illustrates an exemplary embodiment of the process flow of thesystem architecture according to an embodiment of the present invention.In step S1, a command sequence is acquired by the Point of Control 20,either directly or indirectly, from the Management System 10. Thecommand sequence is defined as a series of related commands acquired bythe Point of Control 20 which are to be provided to the one or moreStateless- Agentless Target Systems 30 for execution. According to anembodiment of the present invention, the command sequence may becomprised of a plurality of individual commands which are related to asingle, specific Stateless-Agentless Target System 30 or multipleStateless-Agentless Target Systems 30. The command sequence may beobtained by the Point of Control 20 in any suitable manner, including,but not limited to, by the reading of a script file, as the output of anexecutable, and/or as a result of a virtual machine engine execution(such as, for example, a Java Virtual Machine). One having ordinaryskill in the art will appreciate that the origins of the script,executable, or virtual machine files, and any utilities used to generatearbitrary resulting files is known in the art.

Optionally, in step S1A, upon receipt of the command sequence, the Pointof Control 20 may initialize the state of the command sequence.

Next, In step S2, the Point of Control 20 performs command sequencing onthe plurality of command results received from the one or moreStateless-Agentless Target Systems 30. The command sequencing includes,but is not limited to, ordering the individual commands, processing thecommands, and, in step S2A, sending the individual commands to theStateless-Agentless Target System 30 for execution to acquire specificdata points (e.g., the command results), while handling the conditionallogic, data storage, and communications with the Management System 10.

For example, the following command sequence (which includes threeindividual commands) combines to request that a directory listing beperformed on three volumes of a Windows-bases system:

-   -   dir c:    -   dir d:    -   dir e:

A communications link using a desired protocol is established via theNetwork 40, and the appropriate authentication/authorization credentialsare provided to establish access and permissions to execute the commandson the Stateless-Agentless Target System 30. The “dir c:” command isatomic (e.g., stand-alone), and so it is passed to theStateless-Agentless Target System 30 for execution. The command resultsgenerated by the Stateless-Agentless Target System 30 are passed back tothe Point of Control 20, via the communications link, and processed(e.g., collected, parsed, etc.) by the Point of Control 20. Each of thethree individual commands are managed in a similar manner, until thecommand sequence is exhausted. Upon completion of the command sequence,the communications link is closed and the command results are storedlocally on the Point of Control 20 or forwarded to the Management System10 (see step S6 below).

According to an embodiment of the present invention, the Point ofControl 20 determines the appropriate means by which to transmit or sendeach individual command to the Stateless-Agentless Target System 30, andthen posts that command to the receiving Stateless-Agentless TargetSystem 30 using that means of communication.

In the event the Stateless-Agentless Target System 30 is unavailable toreceive the one or more individual commands, the Point of Control 20manages this condition and responds accordingly. For example, if aStateless-Agentless Target System 30 is unable to support the type,format, or protocol of a specific command, the Point of Control 20modifies the command to allow for processing by the Stateless-AgentlessTarget System 30.

According to an embodiment of the present invention, the Point ofControl 20 may interpret, substitute, interject, delete, ignore, and/ormodify the command sequence or individual commands so as to permitreceipt and handling by the one or more Stateless-Agentless TargetSystems 30. For example, the Point of Control 20 may receive a commandsequence which includes an individual Windows “dir” command. If thePoint of Control 20 detects that the intended Stateless-Agentless TargetSystem 30 is a UNIX-based system, then the Point of Control 20 maysubstitute a UNIX “ls” command for the Windows “dir” command.

Following issuance of the individual commands of the command sequence tothe one or more Stateless-Agentless Target Systems 30, the Point ofControl 20 maintains the state of the command sequence on behalf of theStateless-Agentless Target Systems 30, as described in step S5 below.

In step S3, the one or more Stateless-Agentless Target Systems 30execute the individual commands and return the one or more commandresults to the Point of Control 20. The command results may include, butare not limited to, any data or information generated by theStateless-Agentless Target Systems 30 upon execution of the individualcommands. One having ordinary skill in the art will appreciate thatsteps S2, S2A, and S3 may be performed concurrently, wherein the Pointof Control 20 sends one or more individual commands to theStateless-Agentless Target System 30 while receiving command resultsfrom a Stateless-Agentless Target System 30.

Optionally, the Point of Control 20 may be configured to expect, waitfor, and/or ignore command results generated and provided by theStateless-Agentless Target System 30. In the event a Stateless-AgentlessTarget System 30 fails to respond within a given time period, generallyindicated either the command sequence or defined by the Point of Control20, the Point of Control 20 manages this timeout condition and reactsaccordingly. For example, the Point of Control 20 may interpret,substitute, interject, ignore, and/or modify any command resultsreceived, not received, timed out, and report and track success or errorconditions, or lack thereof.

According to an embodiment of the present invention, in step S4, thePoint of Control 20 performs conditional processing on the commandsequence. Generally, conditional processing is conducted by the Point ofControl 20 when a future action is based, at least in part, onpreviously acquired data or command results.

For example, in order to return a ‘yes’ or a ‘no’ answer as to whetherall parts of an application are running, it may be necessary to test thestatus of each application part individually. Consider the followingexemplary command sequence:

if exist c:\Program Files\myapp\cmd.exe goto :OK1 echo NG - missingcmd.exe goto :NG1 :OK1 if exist c:\Program Files\myapp\config.txt goto:OK2 echo NG - missing config.txt goto :NG2 :OK2 echo OK :NG exit

Note that two files (cmd.exe and config.txt) are to be tested todetermine if they are running properly. If either is missing, textgenerated for the Management System 10 indicates the detection of anerror, and provides the name of the missing file. If both files arefound, the Point of Control 20 provides the Management System 10 with an“OK” message.

The first statement (if exist c:\Program Files\myapp\cmd.exe goto :OK1)is a command sequence comprised of two individual commands: Command 1) atest to determine if a specific file exists, and Command 2) an action totake if it does (note: no specified action is taken if it does not). Assuch, the Point of Control 20 reads this instruction, opens acommunications link having a desired protocol with theStateless-Agentless Target System 30, establishes its right to executecommands on the Stateless-Agentless Target System 30 using theauthentication/authorization credentials previously provided, andsubmits the first individual command for execution. TheStateless-Agentless Target System 30 returns the command resultindicating whether the file either exists or it doesn't. The Point ofControl 20 evaluates the first command result and, based at least inpart on the result, determines its next step. In this example, assumingit was determined that the file exists, the Point of Control 20 moves tolabel “:OK1” and prepares for the next command. Accordingly, whilespecific (individual) commands are sent to and performed by theStateless-Agentless Target System 30, the determination as to whichcommand to execute next (if any) is made by the Point of Control 20.

In step S5, the Point of Control 20 reads and updates the state in viewof the one or more command results received from the Stateless-AgentlessTarget System 30. According to an embodiment of the present invention,the individual command results are associated with the original commandsequence acquired by the Point of Control 20. As such, the individualcommand results may be associated with one another by the Point ofControl 20 in order to update and maintain the state of the commandsequence.

According to an embodiment of the present invention, the Point ofControl 20 may change, alter, control, and/or adjust the order in whichthe individual commands are posted to the Stateless-Agentless TargetSystem 30 in view of the state information, related command resultsreceived from the one or more Stateless-Agentless Target Systems 30 (orlack thereof), response timeouts, and/or any other interaction the Pointof Control 20 has with either the Stateless-Agentless Target System 30or applications, utilities, services, or systems (e.g., the ManagementSystem 10) communicatively connected to the Point of Control 20.

In step S6, the Point of Control 20, upon the completion or terminationof its processing of the command sequence, may optionally declare afinal result. Furthermore, the Point of Control 20 may optionallyprovide the final result to one or more other systems.

It is to be understood that the exemplary embodiments are merelyillustrative of the invention and that many variations of theabove-described embodiments may be devised by one skilled in the artwithout departing from the scope of the invention. It is thereforeintended that all such variations be included within the scope of thefollowing claims and their equivalents.

What is claimed is:
 1. A system comprising: a memory; and a processingdevice coupled to the memory, the processing device to: divide a commandsequence into a plurality of individual commands, provide the pluralityof individual commands to a target system, receive a plurality ofindividual command results from the target system, and manage a stateassociated with the command sequence based at least in part on theplurality of individual command results, wherein the state indicates anindividual command to be executed next.
 2. The system of claim 1,wherein the plurality of individual commands are related to the targetsystem.
 3. The system of claim 1, wherein the target system maintains nostate information related to the command sequence.
 4. The system ofclaim 1, the processing device to receive the command sequence from amanagement system.
 5. The system of claim 4, the processing device tosend a command result to the management system.
 6. The system of claim1, the target system to execute the individual command using nativeexecution facilities.
 7. The system of claim 1, the processing device toperform conditional processing on the command sequence.
 8. The system ofclaim 7, wherein the conditional processing is based at least in part onthe state associated with the command sequence.
 9. The system of claim1, the processing device to update the state of the command sequence.10. The system of claim 9, wherein the state is updated based at leastin part on the plurality of individual command results.
 11. A methodcomprising: dividing, by a processing device, a command sequence into aplurality of individual commands, providing, by the processing device,the plurality of individual commands to a target system, receiving, bythe processing device, a plurality of individual command results fromthe target system, and managing, by the processing device, a stateassociated with the command sequence based at least in part on theplurality of individual command results, wherein the state indicates anindividual command to be executed next.
 12. The method of claim 11,wherein the plurality of individual commands are related to the targetsystem.
 13. The method of claim 11, wherein the target system maintainsno state information related to the command sequence.
 14. The method ofclaim 11, further comprising receiving, by the processing device, thecommand sequence from a management system.
 15. A system comprising: amemory; and a processing device coupled to the memory, the processingdevice to: divide a command sequence into a plurality of individualcommands, wherein the command sequence comprises a series of relatedcommands, provide the plurality of individual commands to the targetsystem for execution, wherein the target system comprises no specificsoftware for monitoring the target system, receive a plurality ofindividual command results from the target system, and manage a state ofthe command sequence based at least in part on the plurality ofindividual command results, wherein the state indicates the individualcommand to be executed next.
 16. The system of claim 15, the processingdevice to perform command sequencing.
 17. The system of claim 15, theprocessing device to perform conditional processing based at least inpart on the state of the command sequence.
 18. A method comprising:receiving, by a processing device in a target system, a plurality ofindividual commands from a point of control; executing, by theprocessing device, individual command requests of a command sequence,wherein the target system comprises no specific software for monitoringthe target system, and wherein the command sequence comprises a seriesof related commands for execution; and generating, by the processingdevice, individual command results; and providing, by the processingdevice, to the point of control, a plurality of individual commandresults, wherein the point of control manages a state associated withthe command sequence based at least in part on the individual commandresults, and wherein the state indicates the individual command to beexecuted next.
 19. The method of claim 18, further comprising executing,by the processing device, the individual command requests of the commandsequence using native execution facilities.
 20. The system of claim 18,further comprising executing, by the point of control, conditionalprocessing on the command sequence.